package one.stand.service;

import one.stand.model.ResultModel;
import one.stand.request.*;
import one.stand.response.CompanyRecruitResponse;
import one.stand.response.DynamicResponse;

import java.util.List;

/**
 * @author Administrator
 */
public interface PersonalService {

    /**
     * 添加收藏
     */
    ResultModel addCollection(CollectionRequest request);

    /**
     * 取消收藏
     */
    ResultModel delCollection(CollectionRequest request);

    /**
     * 查询收藏
     */
    ResultModel getCollection(CollectionRequest request);

    /**
     * 判断是否已经收藏
     */
    ResultModel<Integer> getIsCollection(CollectionRequest request);

    /**
     * 添加我的地址
     */
    ResultModel addAddress(AddressRequest request);

    /**
     * 修改我的地址
     */
    ResultModel updAddress(AddressRequest request);

    /**
     * 删除我的地址
     */
    ResultModel delAddress(AddressRequest request);

    /**
     * 我的地址设置为默认值
     */
    ResultModel isdefult(AddressRequest request);

    /**
     * 查询我的地址
     */
    ResultModel getAddress(TokenRequest request);

    /**
     * 查询公司信息
     */
    ResultModel getCompanyAllInfo(CompanyRequest request);

    /**
     * 查询公司动态
     */
    ResultModel<List<DynamicResponse>> getDynamicInfo(DynamicRequest request);

    /**
     * 给动态/文章点赞
     */
    ResultModel doDynamicThumbs(DynamicRequest request);

    /**
     * 查询所有评论/回复
     * @param request
     * @return
     */
    ResultModel selectComment(CommentRequest request);

    /**
     * 用户评论/回复
     */
    ResultModel doComment(CommentRequest request);

    /**
     * 用户删除评论
     */
    ResultModel delComment(CommentRequest request);

    /**
     * 查询公司动态
     */
    ResultModel getWebsiteInfo(WebsiteRequest request);

    /**
     * 查询公司招聘信息
     */
    ResultModel<List<CompanyRecruitResponse>> getCompanyRecruit(CompanyRecruitRequest request);

    /**
     * 用户提交需求信息
     */
    ResultModel addDemand(DemandRequest request);
}
